﻿using System;
using System.Data;
using System.Linq;

namespace LayerEntity.Hotel
{
    public class EHabitacion
    {
        #region Constructores
        public EHabitacion(IDataRecord record)
        {
            this.Id_habitacion = (int)record["id_habitacion"];
            this.Num_habitacion = record["num_habitacion"].ToString();
            this.Id_tipohabitacion = (int)record["id_tipohabitacion"];
            this.Capacidad = (int)record["capacidad"];
            this.Piso_habitacion = (int)record["piso_habitacion"];
            this.Fecha = DateTime.Parse(record["fecha"].ToString());
            this.Genera_almacen = record["genera_almacen"].ToString();
            this.Id_estado = (int)record["id_estado"];
            this.Id_pisohotel = (int)record["id_pisohotel"];
        }

        public EHabitacion()
        {
            this.Id_habitacion = 0;
            this.Num_habitacion = string.Empty;
            this.Id_tipohabitacion = 0;
            this.Capacidad = 0;
            this.Piso_habitacion = 0;
            this.Fecha = DateTime.Today.Date;
            this.Genera_almacen = string.Empty;
            this.Id_estado = 0;
            this.Id_pisohotel = 0;
        }

        #endregion
        #region Propiedades
        public int Id_habitacion { get; set; }
        public string Num_habitacion { get; set; }
        public int Id_tipohabitacion { get; set; }
        public int Capacidad { get; set; }
        public int Piso_habitacion { get; set; }
        public DateTime Fecha { get; set; }
        public string Genera_almacen { get; set; }
        public int Id_estado { get; set; }
        public int Id_pisohotel { get; set; }
        #endregion
        #region Metodos
        public object[] ToObject(int operacion)
        {
            Console.Write(string.Format("*******{0}\n", operacion));
            object[] obj = new object[]
            {
                operacion,
                this.Id_habitacion,
                this.Num_habitacion,
                this.Id_tipohabitacion,
                this.Capacidad,
                this.Piso_habitacion,
                this.Fecha,
                this.Genera_almacen,
                this.Id_estado,
                this.Id_pisohotel
            };
            return obj;
        }
        #endregion
    }
}